package com.ybkj.o2o.sales.manager;

import com.ybkj.o2o.sales.common.DataGrid;
import com.ybkj.o2o.sales.entity.ActivityRecord;

import java.util.Date;


public interface ActivityRecordManager {


  /**
   * 分页查询活动记录.
   * @param activityId 活动id
   * @param companyId 公司id
   * @param phone 手机号
   * @param startTime 开始时间
   * @param endTime 结束时间
   * @param page 页数
   * @param rows 每页数量
   * @param appKey 系统key
   * @return DataGrid
   */
  DataGrid<ActivityRecord> queryByActivity(Long activityId, Long companyId, String phone,
      Date startTime, Date endTime, Integer page, Integer rows, String appKey);

  /**
   * 统计活动记录数量.
   * @param activityId 活动id
   * @param companyId 公司id
   * @param phone 手机号
   * @param startTime 开始时间
   * @param endTime 结束时间
   * @param appKey 系统key
   * @return Long
   */
  Long countActivityRecord(Long activityId, Long companyId, String phone, Date startTime,
      Date endTime, String appKey);

  /**
   * 统计活动记录数量.
   * @param activityId 活动id
   * @param passengerId 客户id
   * @param appKey 系统key
   * @return Long
   */
  Long countByActivityAndPassenger(Long activityId, Long passengerId, String appKey);

  /**
   * 查询单个活动记录.
   * @param recordId 活动记录id
   * @param appKey 系统key 
   * @return ActivityRecord
   */
  ActivityRecord findOne(Long recordId, String appKey);


}
